/*
nwitsml Copyright 2010 Setiri LLC
Derived from the jwitsml project, Copyright 2010 Statoil ASA
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
*/
namespace nwitsml
{

    //import java.util.Date;

    /**
     * Java representation of a WITSML "commonData".
     *
     * @author <a href="mailto:info@nwitsml.org">NWitsml</a>
     */
    using System;
    public abstract class WitsmlCommonData
    {

        protected String source; // sourceName

        protected DateTime?  timeCreated; // dTimCreation

        protected DateTime?  timeUpdated; // dTimLastChange

        protected String state; // itemState

        protected String serviceCategory;  // serviceCategory - 1.4.0 only

        protected String comments; // comments

        protected String acqusitionTimeZone; // acqusitionTimeZone - 1.4.0 only

        protected WitsmlCommonData()
        {
        }

        public String getSource()
        {
            return source;
        }

        public DateTime? getTimeCreated()
        {
            return timeCreated;
        }

        public DateTime? getTimeUpdated()
        {
            return timeUpdated;
        }

        public String getState()
        {
            return state;
        }

        public String getServiceCategory()
        {
            return serviceCategory;
        }

        public String getComments()
        {
            return comments;
        }

        public String getAcqusitionTimeZone()
        {
            return acqusitionTimeZone;
        }

        /** {@inheritDoc} */
        
        public override String ToString()
        {
            return "\n" + WitsmlObject.ToString(this, 2);
        }
    }
}